//  macro_counter.hpp
//
//  Copyright (c) 2003 Eugene Gladyshev
//
//  Permission to copy, use, modify, sell and distribute this software
//  is granted provided this copyright notice appears in all copies.
//  This software is provided "as is" without express or implied
//  warranty, and with no claim as to its suitability for any purpose.
//

#ifndef __ttl_macro_counter__hpp
#define __ttl_macro_counter__hpp

#include "ttl/macro_misc.hpp"

#define TTL_CNTDEC_0 0
#define TTL_CNTDEC_1 0
#define TTL_CNTDEC_2 1
#define TTL_CNTDEC_3 2
#define TTL_CNTDEC_4 3
#define TTL_CNTDEC_5 4
#define TTL_CNTDEC_6 5
#define TTL_CNTDEC_7 6
#define TTL_CNTDEC_8 7
#define TTL_CNTDEC_9 8
#define TTL_CNTDEC_10 9
#define TTL_CNTDEC_11 10
#define TTL_CNTDEC_12 11
#define TTL_CNTDEC_13 12
#define TTL_CNTDEC_14 13
#define TTL_CNTDEC_15 14
#define TTL_CNTDEC_16 15
#define TTL_CNTDEC_17 16
#define TTL_CNTDEC_18 17
#define TTL_CNTDEC_19 18
#define TTL_CNTDEC_20 19
#define TTL_CNTDEC_21 20
#define TTL_CNTDEC_22 21
#define TTL_CNTDEC_23 22
#define TTL_CNTDEC_24 23
#define TTL_CNTDEC_25 24
#define TTL_CNTDEC_26 25
#define TTL_CNTDEC_27 26
#define TTL_CNTDEC_28 27
#define TTL_CNTDEC_29 28
#define TTL_CNTDEC_30 29
#define TTL_CNTDEC_31 30
#define TTL_CNTDEC_32 31
#define TTL_CNTDEC_33 32
#define TTL_CNTDEC_34 33
#define TTL_CNTDEC_35 34
#define TTL_CNTDEC_36 35
#define TTL_CNTDEC_37 36
#define TTL_CNTDEC_38 37
#define TTL_CNTDEC_39 38
#define TTL_CNTDEC_40 39
#define TTL_CNTDEC_41 40
#define TTL_CNTDEC_42 41
#define TTL_CNTDEC_43 42
#define TTL_CNTDEC_44 43
#define TTL_CNTDEC_45 44
#define TTL_CNTDEC_46 45
#define TTL_CNTDEC_47 46
#define TTL_CNTDEC_48 47
#define TTL_CNTDEC_49 48
#define TTL_CNTDEC_50 49
#define TTL_CNTDEC_51 50
#define TTL_CNTDEC_52 51
#define TTL_CNTDEC_53 52
#define TTL_CNTDEC_54 53
#define TTL_CNTDEC_55 54
#define TTL_CNTDEC_56 55
#define TTL_CNTDEC_57 56
#define TTL_CNTDEC_58 57
#define TTL_CNTDEC_59 58
#define TTL_CNTDEC_60 59
#define TTL_CNTDEC_61 60
#define TTL_CNTDEC_62 61
#define TTL_CNTDEC_63 62
#define TTL_CNTDEC_64 63
#define TTL_CNTDEC_65 64
#define TTL_CNTDEC_66 65
#define TTL_CNTDEC_67 66
#define TTL_CNTDEC_68 67
#define TTL_CNTDEC_69 68
#define TTL_CNTDEC_70 69
#define TTL_CNTDEC_71 70
#define TTL_CNTDEC_72 71
#define TTL_CNTDEC_73 72
#define TTL_CNTDEC_74 73
#define TTL_CNTDEC_75 74
#define TTL_CNTDEC_76 75
#define TTL_CNTDEC_77 76
#define TTL_CNTDEC_78 77
#define TTL_CNTDEC_79 78
#define TTL_CNTDEC_80 79
#define TTL_CNTDEC_81 80
#define TTL_CNTDEC_82 81
#define TTL_CNTDEC_83 82
#define TTL_CNTDEC_84 83
#define TTL_CNTDEC_85 84
#define TTL_CNTDEC_86 85
#define TTL_CNTDEC_87 86
#define TTL_CNTDEC_88 87
#define TTL_CNTDEC_89 88
#define TTL_CNTDEC_90 89
#define TTL_CNTDEC_91 90
#define TTL_CNTDEC_92 91
#define TTL_CNTDEC_93 92
#define TTL_CNTDEC_94 93
#define TTL_CNTDEC_95 94
#define TTL_CNTDEC_96 95
#define TTL_CNTDEC_97 96
#define TTL_CNTDEC_98 97
#define TTL_CNTDEC_99 98
#define TTL_CNTDEC_100 99
#define TTL_CNTDEC_101 100
#define TTL_CNTDEC_102 101
#define TTL_CNTDEC_103 102
#define TTL_CNTDEC_104 103
#define TTL_CNTDEC_105 104
#define TTL_CNTDEC_106 105
#define TTL_CNTDEC_107 106
#define TTL_CNTDEC_108 107
#define TTL_CNTDEC_109 108
#define TTL_CNTDEC_110 109
#define TTL_CNTDEC_111 110
#define TTL_CNTDEC_112 111
#define TTL_CNTDEC_113 112
#define TTL_CNTDEC_114 113
#define TTL_CNTDEC_115 114
#define TTL_CNTDEC_116 115
#define TTL_CNTDEC_117 116
#define TTL_CNTDEC_118 117
#define TTL_CNTDEC_119 118
#define TTL_CNTDEC_120 119
#define TTL_CNTDEC_121 120
#define TTL_CNTDEC_122 121
#define TTL_CNTDEC_123 122
#define TTL_CNTDEC_124 123
#define TTL_CNTDEC_125 124
#define TTL_CNTDEC_126 125
#define TTL_CNTDEC_127 126
#define TTL_CNTDEC_128 127
#define TTL_CNTDEC_129 128
#define TTL_CNTDEC_130 129
#define TTL_CNTDEC_131 130
#define TTL_CNTDEC_132 131
#define TTL_CNTDEC_133 132
#define TTL_CNTDEC_134 133
#define TTL_CNTDEC_135 134
#define TTL_CNTDEC_136 135
#define TTL_CNTDEC_137 136
#define TTL_CNTDEC_138 137
#define TTL_CNTDEC_139 138
#define TTL_CNTDEC_140 139
#define TTL_CNTDEC_141 140
#define TTL_CNTDEC_142 141
#define TTL_CNTDEC_143 142
#define TTL_CNTDEC_144 143
#define TTL_CNTDEC_145 144
#define TTL_CNTDEC_146 145
#define TTL_CNTDEC_147 146
#define TTL_CNTDEC_148 147
#define TTL_CNTDEC_149 148
#define TTL_CNTDEC_150 149
#define TTL_CNTDEC_151 150
#define TTL_CNTDEC_152 151
#define TTL_CNTDEC_153 152
#define TTL_CNTDEC_154 153
#define TTL_CNTDEC_155 154
#define TTL_CNTDEC_156 155
#define TTL_CNTDEC_157 156
#define TTL_CNTDEC_158 157
#define TTL_CNTDEC_159 158
#define TTL_CNTDEC_160 159
#define TTL_CNTDEC_161 160
#define TTL_CNTDEC_162 161
#define TTL_CNTDEC_163 162
#define TTL_CNTDEC_164 163
#define TTL_CNTDEC_165 164
#define TTL_CNTDEC_166 165
#define TTL_CNTDEC_167 166
#define TTL_CNTDEC_168 167
#define TTL_CNTDEC_169 168
#define TTL_CNTDEC_170 169
#define TTL_CNTDEC_171 170
#define TTL_CNTDEC_172 171
#define TTL_CNTDEC_173 172
#define TTL_CNTDEC_174 173
#define TTL_CNTDEC_175 174
#define TTL_CNTDEC_176 175
#define TTL_CNTDEC_177 176
#define TTL_CNTDEC_178 177
#define TTL_CNTDEC_179 178
#define TTL_CNTDEC_180 179
#define TTL_CNTDEC_181 180
#define TTL_CNTDEC_182 181
#define TTL_CNTDEC_183 182
#define TTL_CNTDEC_184 183
#define TTL_CNTDEC_185 184
#define TTL_CNTDEC_186 185
#define TTL_CNTDEC_187 186
#define TTL_CNTDEC_188 187
#define TTL_CNTDEC_189 188
#define TTL_CNTDEC_190 189
#define TTL_CNTDEC_191 190
#define TTL_CNTDEC_192 191
#define TTL_CNTDEC_193 192
#define TTL_CNTDEC_194 193
#define TTL_CNTDEC_195 194
#define TTL_CNTDEC_196 195
#define TTL_CNTDEC_197 196
#define TTL_CNTDEC_198 197
#define TTL_CNTDEC_199 198
#define TTL_CNTDEC_200 199
#define TTL_CNTDEC_201 200
#define TTL_CNTDEC_202 201
#define TTL_CNTDEC_203 202
#define TTL_CNTDEC_204 203
#define TTL_CNTDEC_205 204
#define TTL_CNTDEC_206 205
#define TTL_CNTDEC_207 206
#define TTL_CNTDEC_208 207
#define TTL_CNTDEC_209 208
#define TTL_CNTDEC_210 209
#define TTL_CNTDEC_211 210
#define TTL_CNTDEC_212 211
#define TTL_CNTDEC_213 212
#define TTL_CNTDEC_214 213
#define TTL_CNTDEC_215 214
#define TTL_CNTDEC_216 215
#define TTL_CNTDEC_217 216
#define TTL_CNTDEC_218 217
#define TTL_CNTDEC_219 218
#define TTL_CNTDEC_220 219
#define TTL_CNTDEC_221 220
#define TTL_CNTDEC_222 221
#define TTL_CNTDEC_223 222
#define TTL_CNTDEC_224 223
#define TTL_CNTDEC_225 224
#define TTL_CNTDEC_226 225
#define TTL_CNTDEC_227 226
#define TTL_CNTDEC_228 227
#define TTL_CNTDEC_229 228
#define TTL_CNTDEC_230 229
#define TTL_CNTDEC_231 230
#define TTL_CNTDEC_232 231
#define TTL_CNTDEC_233 232
#define TTL_CNTDEC_234 233
#define TTL_CNTDEC_235 234
#define TTL_CNTDEC_236 235
#define TTL_CNTDEC_237 236
#define TTL_CNTDEC_238 237
#define TTL_CNTDEC_239 238
#define TTL_CNTDEC_240 239
#define TTL_CNTDEC_241 240
#define TTL_CNTDEC_242 241
#define TTL_CNTDEC_243 242
#define TTL_CNTDEC_244 243
#define TTL_CNTDEC_245 244
#define TTL_CNTDEC_246 245
#define TTL_CNTDEC_247 246
#define TTL_CNTDEC_248 247
#define TTL_CNTDEC_249 248
#define TTL_CNTDEC_250 249
#define TTL_CNTDEC_251 250
#define TTL_CNTDEC_252 251
#define TTL_CNTDEC_253 252
#define TTL_CNTDEC_254 253
#define TTL_CNTDEC_255 254
#define TTL_CNTDEC_256 255
#define TTL_CNTDEC_257 256
#define TTL_CNTDEC_258 257
#define TTL_CNTDEC_259 258
#define TTL_CNTDEC_260 259
#define TTL_CNTDEC_261 260
#define TTL_CNTDEC_262 261
#define TTL_CNTDEC_263 262
#define TTL_CNTDEC_264 263
#define TTL_CNTDEC_265 264
#define TTL_CNTDEC_266 265
#define TTL_CNTDEC_267 266
#define TTL_CNTDEC_268 267
#define TTL_CNTDEC_269 268
#define TTL_CNTDEC_270 269
#define TTL_CNTDEC_271 270
#define TTL_CNTDEC_272 271
#define TTL_CNTDEC_273 272
#define TTL_CNTDEC_274 273
#define TTL_CNTDEC_275 274
#define TTL_CNTDEC_276 275
#define TTL_CNTDEC_277 276
#define TTL_CNTDEC_278 277
#define TTL_CNTDEC_279 278
#define TTL_CNTDEC_280 279
#define TTL_CNTDEC_281 280
#define TTL_CNTDEC_282 281
#define TTL_CNTDEC_283 282
#define TTL_CNTDEC_284 283
#define TTL_CNTDEC_285 284
#define TTL_CNTDEC_286 285
#define TTL_CNTDEC_287 286
#define TTL_CNTDEC_288 287
#define TTL_CNTDEC_289 288
#define TTL_CNTDEC_290 289
#define TTL_CNTDEC_291 290
#define TTL_CNTDEC_292 291
#define TTL_CNTDEC_293 292
#define TTL_CNTDEC_294 293
#define TTL_CNTDEC_295 294
#define TTL_CNTDEC_296 295
#define TTL_CNTDEC_297 296
#define TTL_CNTDEC_298 297
#define TTL_CNTDEC_299 298
#define TTL_CNTDEC_300 299
#define TTL_CNTDEC_301 300
#define TTL_CNTDEC_302 301
#define TTL_CNTDEC_303 302
#define TTL_CNTDEC_304 303
#define TTL_CNTDEC_305 304
#define TTL_CNTDEC_306 305
#define TTL_CNTDEC_307 306
#define TTL_CNTDEC_308 307
#define TTL_CNTDEC_309 308
#define TTL_CNTDEC_310 309
#define TTL_CNTDEC_311 310
#define TTL_CNTDEC_312 311
#define TTL_CNTDEC_313 312
#define TTL_CNTDEC_314 313
#define TTL_CNTDEC_315 314
#define TTL_CNTDEC_316 315
#define TTL_CNTDEC_317 316
#define TTL_CNTDEC_318 317
#define TTL_CNTDEC_319 318
#define TTL_CNTDEC_320 319
#define TTL_CNTDEC_321 320
#define TTL_CNTDEC_322 321
#define TTL_CNTDEC_323 322
#define TTL_CNTDEC_324 323
#define TTL_CNTDEC_325 324
#define TTL_CNTDEC_326 325
#define TTL_CNTDEC_327 326
#define TTL_CNTDEC_328 327
#define TTL_CNTDEC_329 328
#define TTL_CNTDEC_330 329
#define TTL_CNTDEC_331 330
#define TTL_CNTDEC_332 331
#define TTL_CNTDEC_333 332
#define TTL_CNTDEC_334 333
#define TTL_CNTDEC_335 334
#define TTL_CNTDEC_336 335
#define TTL_CNTDEC_337 336
#define TTL_CNTDEC_338 337
#define TTL_CNTDEC_339 338
#define TTL_CNTDEC_340 339
#define TTL_CNTDEC_341 340
#define TTL_CNTDEC_342 341
#define TTL_CNTDEC_343 342
#define TTL_CNTDEC_344 343
#define TTL_CNTDEC_345 344
#define TTL_CNTDEC_346 345
#define TTL_CNTDEC_347 346
#define TTL_CNTDEC_348 347
#define TTL_CNTDEC_349 348
#define TTL_CNTDEC_350 349
#define TTL_CNTDEC_351 350
#define TTL_CNTDEC_352 351
#define TTL_CNTDEC_353 352
#define TTL_CNTDEC_354 353
#define TTL_CNTDEC_355 354
#define TTL_CNTDEC_356 355
#define TTL_CNTDEC_357 356
#define TTL_CNTDEC_358 357
#define TTL_CNTDEC_359 358
#define TTL_CNTDEC_360 359
#define TTL_CNTDEC_361 360
#define TTL_CNTDEC_362 361
#define TTL_CNTDEC_363 362
#define TTL_CNTDEC_364 363
#define TTL_CNTDEC_365 364
#define TTL_CNTDEC_366 365
#define TTL_CNTDEC_367 366
#define TTL_CNTDEC_368 367
#define TTL_CNTDEC_369 368
#define TTL_CNTDEC_370 369
#define TTL_CNTDEC_371 370
#define TTL_CNTDEC_372 371
#define TTL_CNTDEC_373 372
#define TTL_CNTDEC_374 373
#define TTL_CNTDEC_375 374
#define TTL_CNTDEC_376 375
#define TTL_CNTDEC_377 376
#define TTL_CNTDEC_378 377
#define TTL_CNTDEC_379 378
#define TTL_CNTDEC_380 379
#define TTL_CNTDEC_381 380
#define TTL_CNTDEC_382 381
#define TTL_CNTDEC_383 382
#define TTL_CNTDEC_384 383
#define TTL_CNTDEC_385 384
#define TTL_CNTDEC_386 385
#define TTL_CNTDEC_387 386
#define TTL_CNTDEC_388 387
#define TTL_CNTDEC_389 388
#define TTL_CNTDEC_390 389
#define TTL_CNTDEC_391 390
#define TTL_CNTDEC_392 391
#define TTL_CNTDEC_393 392
#define TTL_CNTDEC_394 393
#define TTL_CNTDEC_395 394
#define TTL_CNTDEC_396 395
#define TTL_CNTDEC_397 396
#define TTL_CNTDEC_398 397
#define TTL_CNTDEC_399 398
#define TTL_CNTDEC_400 399
#define TTL_CNTDEC_401 400
#define TTL_CNTDEC_402 401
#define TTL_CNTDEC_403 402
#define TTL_CNTDEC_404 403
#define TTL_CNTDEC_405 404
#define TTL_CNTDEC_406 405
#define TTL_CNTDEC_407 406
#define TTL_CNTDEC_408 407
#define TTL_CNTDEC_409 408
#define TTL_CNTDEC_410 409
#define TTL_CNTDEC_411 410
#define TTL_CNTDEC_412 411
#define TTL_CNTDEC_413 412
#define TTL_CNTDEC_414 413
#define TTL_CNTDEC_415 414
#define TTL_CNTDEC_416 415
#define TTL_CNTDEC_417 416
#define TTL_CNTDEC_418 417
#define TTL_CNTDEC_419 418
#define TTL_CNTDEC_420 419
#define TTL_CNTDEC_421 420
#define TTL_CNTDEC_422 421
#define TTL_CNTDEC_423 422
#define TTL_CNTDEC_424 423
#define TTL_CNTDEC_425 424
#define TTL_CNTDEC_426 425
#define TTL_CNTDEC_427 426
#define TTL_CNTDEC_428 427
#define TTL_CNTDEC_429 428
#define TTL_CNTDEC_430 429
#define TTL_CNTDEC_431 430
#define TTL_CNTDEC_432 431
#define TTL_CNTDEC_433 432
#define TTL_CNTDEC_434 433
#define TTL_CNTDEC_435 434
#define TTL_CNTDEC_436 435
#define TTL_CNTDEC_437 436
#define TTL_CNTDEC_438 437
#define TTL_CNTDEC_439 438
#define TTL_CNTDEC_440 439
#define TTL_CNTDEC_441 440
#define TTL_CNTDEC_442 441
#define TTL_CNTDEC_443 442
#define TTL_CNTDEC_444 443
#define TTL_CNTDEC_445 444
#define TTL_CNTDEC_446 445
#define TTL_CNTDEC_447 446
#define TTL_CNTDEC_448 447
#define TTL_CNTDEC_449 448
#define TTL_CNTDEC_450 449
#define TTL_CNTDEC_451 450
#define TTL_CNTDEC_452 451
#define TTL_CNTDEC_453 452
#define TTL_CNTDEC_454 453
#define TTL_CNTDEC_455 454
#define TTL_CNTDEC_456 455
#define TTL_CNTDEC_457 456
#define TTL_CNTDEC_458 457
#define TTL_CNTDEC_459 458
#define TTL_CNTDEC_460 459
#define TTL_CNTDEC_461 460
#define TTL_CNTDEC_462 461
#define TTL_CNTDEC_463 462
#define TTL_CNTDEC_464 463
#define TTL_CNTDEC_465 464
#define TTL_CNTDEC_466 465
#define TTL_CNTDEC_467 466
#define TTL_CNTDEC_468 467
#define TTL_CNTDEC_469 468
#define TTL_CNTDEC_470 469
#define TTL_CNTDEC_471 470
#define TTL_CNTDEC_472 471
#define TTL_CNTDEC_473 472
#define TTL_CNTDEC_474 473
#define TTL_CNTDEC_475 474
#define TTL_CNTDEC_476 475
#define TTL_CNTDEC_477 476
#define TTL_CNTDEC_478 477
#define TTL_CNTDEC_479 478
#define TTL_CNTDEC_480 479
#define TTL_CNTDEC_481 480
#define TTL_CNTDEC_482 481
#define TTL_CNTDEC_483 482
#define TTL_CNTDEC_484 483
#define TTL_CNTDEC_485 484
#define TTL_CNTDEC_486 485
#define TTL_CNTDEC_487 486
#define TTL_CNTDEC_488 487
#define TTL_CNTDEC_489 488
#define TTL_CNTDEC_490 489
#define TTL_CNTDEC_491 490
#define TTL_CNTDEC_492 491
#define TTL_CNTDEC_493 492
#define TTL_CNTDEC_494 493
#define TTL_CNTDEC_495 494
#define TTL_CNTDEC_496 495
#define TTL_CNTDEC_497 496
#define TTL_CNTDEC_498 497
#define TTL_CNTDEC_499 498
#define TTL_CNTDEC_500 499
#define TTL_CNTDEC_501 500
#define TTL_CNTDEC_502 501
#define TTL_CNTDEC_503 502
#define TTL_CNTDEC_504 503
#define TTL_CNTDEC_505 504
#define TTL_CNTDEC_506 505
#define TTL_CNTDEC_507 506
#define TTL_CNTDEC_508 507
#define TTL_CNTDEC_509 508
#define TTL_CNTDEC_510 509
#define TTL_CNTDEC_511 510

#define TTL_CNTINC_0 1
#define TTL_CNTINC_1 2
#define TTL_CNTINC_2 3
#define TTL_CNTINC_3 4
#define TTL_CNTINC_4 5
#define TTL_CNTINC_5 6
#define TTL_CNTINC_6 7
#define TTL_CNTINC_7 8
#define TTL_CNTINC_8 9
#define TTL_CNTINC_9 10
#define TTL_CNTINC_10 11
#define TTL_CNTINC_11 12
#define TTL_CNTINC_12 13
#define TTL_CNTINC_13 14
#define TTL_CNTINC_14 15
#define TTL_CNTINC_15 16
#define TTL_CNTINC_16 17
#define TTL_CNTINC_17 18
#define TTL_CNTINC_18 19
#define TTL_CNTINC_19 20
#define TTL_CNTINC_20 21
#define TTL_CNTINC_21 22
#define TTL_CNTINC_22 23
#define TTL_CNTINC_23 24
#define TTL_CNTINC_24 25
#define TTL_CNTINC_25 26
#define TTL_CNTINC_26 27
#define TTL_CNTINC_27 28
#define TTL_CNTINC_28 29
#define TTL_CNTINC_29 30
#define TTL_CNTINC_30 31
#define TTL_CNTINC_31 32
#define TTL_CNTINC_32 33
#define TTL_CNTINC_33 34
#define TTL_CNTINC_34 35
#define TTL_CNTINC_35 36
#define TTL_CNTINC_36 37
#define TTL_CNTINC_37 38
#define TTL_CNTINC_38 39
#define TTL_CNTINC_39 40
#define TTL_CNTINC_40 41
#define TTL_CNTINC_41 42
#define TTL_CNTINC_42 43
#define TTL_CNTINC_43 44
#define TTL_CNTINC_44 45
#define TTL_CNTINC_45 46
#define TTL_CNTINC_46 47
#define TTL_CNTINC_47 48
#define TTL_CNTINC_48 49
#define TTL_CNTINC_49 50
#define TTL_CNTINC_50 51
#define TTL_CNTINC_51 52
#define TTL_CNTINC_52 53
#define TTL_CNTINC_53 54
#define TTL_CNTINC_54 55
#define TTL_CNTINC_55 56
#define TTL_CNTINC_56 57
#define TTL_CNTINC_57 58
#define TTL_CNTINC_58 59
#define TTL_CNTINC_59 60
#define TTL_CNTINC_60 61
#define TTL_CNTINC_61 62
#define TTL_CNTINC_62 63
#define TTL_CNTINC_63 64
#define TTL_CNTINC_64 65
#define TTL_CNTINC_65 66
#define TTL_CNTINC_66 67
#define TTL_CNTINC_67 68
#define TTL_CNTINC_68 69
#define TTL_CNTINC_69 70
#define TTL_CNTINC_70 71
#define TTL_CNTINC_71 72
#define TTL_CNTINC_72 73
#define TTL_CNTINC_73 74
#define TTL_CNTINC_74 75
#define TTL_CNTINC_75 76
#define TTL_CNTINC_76 77
#define TTL_CNTINC_77 78
#define TTL_CNTINC_78 79
#define TTL_CNTINC_79 80
#define TTL_CNTINC_80 81
#define TTL_CNTINC_81 82
#define TTL_CNTINC_82 83
#define TTL_CNTINC_83 84
#define TTL_CNTINC_84 85
#define TTL_CNTINC_85 86
#define TTL_CNTINC_86 87
#define TTL_CNTINC_87 88
#define TTL_CNTINC_88 89
#define TTL_CNTINC_89 90
#define TTL_CNTINC_90 91
#define TTL_CNTINC_91 92
#define TTL_CNTINC_92 93
#define TTL_CNTINC_93 94
#define TTL_CNTINC_94 95
#define TTL_CNTINC_95 96
#define TTL_CNTINC_96 97
#define TTL_CNTINC_97 98
#define TTL_CNTINC_98 99
#define TTL_CNTINC_99 100
#define TTL_CNTINC_100 101
#define TTL_CNTINC_101 102
#define TTL_CNTINC_102 103
#define TTL_CNTINC_103 104
#define TTL_CNTINC_104 105
#define TTL_CNTINC_105 106
#define TTL_CNTINC_106 107
#define TTL_CNTINC_107 108
#define TTL_CNTINC_108 109
#define TTL_CNTINC_109 110
#define TTL_CNTINC_110 111
#define TTL_CNTINC_111 112
#define TTL_CNTINC_112 113
#define TTL_CNTINC_113 114
#define TTL_CNTINC_114 115
#define TTL_CNTINC_115 116
#define TTL_CNTINC_116 117
#define TTL_CNTINC_117 118
#define TTL_CNTINC_118 119
#define TTL_CNTINC_119 120
#define TTL_CNTINC_120 121
#define TTL_CNTINC_121 122
#define TTL_CNTINC_122 123
#define TTL_CNTINC_123 124
#define TTL_CNTINC_124 125
#define TTL_CNTINC_125 126
#define TTL_CNTINC_126 127
#define TTL_CNTINC_127 128
#define TTL_CNTINC_128 129
#define TTL_CNTINC_129 130
#define TTL_CNTINC_130 131
#define TTL_CNTINC_131 132
#define TTL_CNTINC_132 133
#define TTL_CNTINC_133 134
#define TTL_CNTINC_134 135
#define TTL_CNTINC_135 136
#define TTL_CNTINC_136 137
#define TTL_CNTINC_137 138
#define TTL_CNTINC_138 139
#define TTL_CNTINC_139 140
#define TTL_CNTINC_140 141
#define TTL_CNTINC_141 142
#define TTL_CNTINC_142 143
#define TTL_CNTINC_143 144
#define TTL_CNTINC_144 145
#define TTL_CNTINC_145 146
#define TTL_CNTINC_146 147
#define TTL_CNTINC_147 148
#define TTL_CNTINC_148 149
#define TTL_CNTINC_149 150
#define TTL_CNTINC_150 151
#define TTL_CNTINC_151 152
#define TTL_CNTINC_152 153
#define TTL_CNTINC_153 154
#define TTL_CNTINC_154 155
#define TTL_CNTINC_155 156
#define TTL_CNTINC_156 157
#define TTL_CNTINC_157 158
#define TTL_CNTINC_158 159
#define TTL_CNTINC_159 160
#define TTL_CNTINC_160 161
#define TTL_CNTINC_161 162
#define TTL_CNTINC_162 163
#define TTL_CNTINC_163 164
#define TTL_CNTINC_164 165
#define TTL_CNTINC_165 166
#define TTL_CNTINC_166 167
#define TTL_CNTINC_167 168
#define TTL_CNTINC_168 169
#define TTL_CNTINC_169 170
#define TTL_CNTINC_170 171
#define TTL_CNTINC_171 172
#define TTL_CNTINC_172 173
#define TTL_CNTINC_173 174
#define TTL_CNTINC_174 175
#define TTL_CNTINC_175 176
#define TTL_CNTINC_176 177
#define TTL_CNTINC_177 178
#define TTL_CNTINC_178 179
#define TTL_CNTINC_179 180
#define TTL_CNTINC_180 181
#define TTL_CNTINC_181 182
#define TTL_CNTINC_182 183
#define TTL_CNTINC_183 184
#define TTL_CNTINC_184 185
#define TTL_CNTINC_185 186
#define TTL_CNTINC_186 187
#define TTL_CNTINC_187 188
#define TTL_CNTINC_188 189
#define TTL_CNTINC_189 190
#define TTL_CNTINC_190 191
#define TTL_CNTINC_191 192
#define TTL_CNTINC_192 193
#define TTL_CNTINC_193 194
#define TTL_CNTINC_194 195
#define TTL_CNTINC_195 196
#define TTL_CNTINC_196 197
#define TTL_CNTINC_197 198
#define TTL_CNTINC_198 199
#define TTL_CNTINC_199 200
#define TTL_CNTINC_200 201
#define TTL_CNTINC_201 202
#define TTL_CNTINC_202 203
#define TTL_CNTINC_203 204
#define TTL_CNTINC_204 205
#define TTL_CNTINC_205 206
#define TTL_CNTINC_206 207
#define TTL_CNTINC_207 208
#define TTL_CNTINC_208 209
#define TTL_CNTINC_209 210
#define TTL_CNTINC_210 211
#define TTL_CNTINC_211 212
#define TTL_CNTINC_212 213
#define TTL_CNTINC_213 214
#define TTL_CNTINC_214 215
#define TTL_CNTINC_215 216
#define TTL_CNTINC_216 217
#define TTL_CNTINC_217 218
#define TTL_CNTINC_218 219
#define TTL_CNTINC_219 220
#define TTL_CNTINC_220 221
#define TTL_CNTINC_221 222
#define TTL_CNTINC_222 223
#define TTL_CNTINC_223 224
#define TTL_CNTINC_224 225
#define TTL_CNTINC_225 226
#define TTL_CNTINC_226 227
#define TTL_CNTINC_227 228
#define TTL_CNTINC_228 229
#define TTL_CNTINC_229 230
#define TTL_CNTINC_230 231
#define TTL_CNTINC_231 232
#define TTL_CNTINC_232 233
#define TTL_CNTINC_233 234
#define TTL_CNTINC_234 235
#define TTL_CNTINC_235 236
#define TTL_CNTINC_236 237
#define TTL_CNTINC_237 238
#define TTL_CNTINC_238 239
#define TTL_CNTINC_239 240
#define TTL_CNTINC_240 241
#define TTL_CNTINC_241 242
#define TTL_CNTINC_242 243
#define TTL_CNTINC_243 244
#define TTL_CNTINC_244 245
#define TTL_CNTINC_245 246
#define TTL_CNTINC_246 247
#define TTL_CNTINC_247 248
#define TTL_CNTINC_248 249
#define TTL_CNTINC_249 250
#define TTL_CNTINC_250 251
#define TTL_CNTINC_251 252
#define TTL_CNTINC_252 253
#define TTL_CNTINC_253 254
#define TTL_CNTINC_254 255
#define TTL_CNTINC_255 256
#define TTL_CNTINC_256 257
#define TTL_CNTINC_257 258
#define TTL_CNTINC_258 259
#define TTL_CNTINC_259 260
#define TTL_CNTINC_260 261
#define TTL_CNTINC_261 262
#define TTL_CNTINC_262 263
#define TTL_CNTINC_263 264
#define TTL_CNTINC_264 265
#define TTL_CNTINC_265 266
#define TTL_CNTINC_266 267
#define TTL_CNTINC_267 268
#define TTL_CNTINC_268 269
#define TTL_CNTINC_269 270
#define TTL_CNTINC_270 271
#define TTL_CNTINC_271 272
#define TTL_CNTINC_272 273
#define TTL_CNTINC_273 274
#define TTL_CNTINC_274 275
#define TTL_CNTINC_275 276
#define TTL_CNTINC_276 277
#define TTL_CNTINC_277 278
#define TTL_CNTINC_278 279
#define TTL_CNTINC_279 280
#define TTL_CNTINC_280 281
#define TTL_CNTINC_281 282
#define TTL_CNTINC_282 283
#define TTL_CNTINC_283 284
#define TTL_CNTINC_284 285
#define TTL_CNTINC_285 286
#define TTL_CNTINC_286 287
#define TTL_CNTINC_287 288
#define TTL_CNTINC_288 289
#define TTL_CNTINC_289 290
#define TTL_CNTINC_290 291
#define TTL_CNTINC_291 292
#define TTL_CNTINC_292 293
#define TTL_CNTINC_293 294
#define TTL_CNTINC_294 295
#define TTL_CNTINC_295 296
#define TTL_CNTINC_296 297
#define TTL_CNTINC_297 298
#define TTL_CNTINC_298 299
#define TTL_CNTINC_299 300
#define TTL_CNTINC_300 301
#define TTL_CNTINC_301 302
#define TTL_CNTINC_302 303
#define TTL_CNTINC_303 304
#define TTL_CNTINC_304 305
#define TTL_CNTINC_305 306
#define TTL_CNTINC_306 307
#define TTL_CNTINC_307 308
#define TTL_CNTINC_308 309
#define TTL_CNTINC_309 310
#define TTL_CNTINC_310 311
#define TTL_CNTINC_311 312
#define TTL_CNTINC_312 313
#define TTL_CNTINC_313 314
#define TTL_CNTINC_314 315
#define TTL_CNTINC_315 316
#define TTL_CNTINC_316 317
#define TTL_CNTINC_317 318
#define TTL_CNTINC_318 319
#define TTL_CNTINC_319 320
#define TTL_CNTINC_320 321
#define TTL_CNTINC_321 322
#define TTL_CNTINC_322 323
#define TTL_CNTINC_323 324
#define TTL_CNTINC_324 325
#define TTL_CNTINC_325 326
#define TTL_CNTINC_326 327
#define TTL_CNTINC_327 328
#define TTL_CNTINC_328 329
#define TTL_CNTINC_329 330
#define TTL_CNTINC_330 331
#define TTL_CNTINC_331 332
#define TTL_CNTINC_332 333
#define TTL_CNTINC_333 334
#define TTL_CNTINC_334 335
#define TTL_CNTINC_335 336
#define TTL_CNTINC_336 337
#define TTL_CNTINC_337 338
#define TTL_CNTINC_338 339
#define TTL_CNTINC_339 340
#define TTL_CNTINC_340 341
#define TTL_CNTINC_341 342
#define TTL_CNTINC_342 343
#define TTL_CNTINC_343 344
#define TTL_CNTINC_344 345
#define TTL_CNTINC_345 346
#define TTL_CNTINC_346 347
#define TTL_CNTINC_347 348
#define TTL_CNTINC_348 349
#define TTL_CNTINC_349 350
#define TTL_CNTINC_350 351
#define TTL_CNTINC_351 352
#define TTL_CNTINC_352 353
#define TTL_CNTINC_353 354
#define TTL_CNTINC_354 355
#define TTL_CNTINC_355 356
#define TTL_CNTINC_356 357
#define TTL_CNTINC_357 358
#define TTL_CNTINC_358 359
#define TTL_CNTINC_359 360
#define TTL_CNTINC_360 361
#define TTL_CNTINC_361 362
#define TTL_CNTINC_362 363
#define TTL_CNTINC_363 364
#define TTL_CNTINC_364 365
#define TTL_CNTINC_365 366
#define TTL_CNTINC_366 367
#define TTL_CNTINC_367 368
#define TTL_CNTINC_368 369
#define TTL_CNTINC_369 370
#define TTL_CNTINC_370 371
#define TTL_CNTINC_371 372
#define TTL_CNTINC_372 373
#define TTL_CNTINC_373 374
#define TTL_CNTINC_374 375
#define TTL_CNTINC_375 376
#define TTL_CNTINC_376 377
#define TTL_CNTINC_377 378
#define TTL_CNTINC_378 379
#define TTL_CNTINC_379 380
#define TTL_CNTINC_380 381
#define TTL_CNTINC_381 382
#define TTL_CNTINC_382 383
#define TTL_CNTINC_383 384
#define TTL_CNTINC_384 385
#define TTL_CNTINC_385 386
#define TTL_CNTINC_386 387
#define TTL_CNTINC_387 388
#define TTL_CNTINC_388 389
#define TTL_CNTINC_389 390
#define TTL_CNTINC_390 391
#define TTL_CNTINC_391 392
#define TTL_CNTINC_392 393
#define TTL_CNTINC_393 394
#define TTL_CNTINC_394 395
#define TTL_CNTINC_395 396
#define TTL_CNTINC_396 397
#define TTL_CNTINC_397 398
#define TTL_CNTINC_398 399
#define TTL_CNTINC_399 400
#define TTL_CNTINC_400 401
#define TTL_CNTINC_401 402
#define TTL_CNTINC_402 403
#define TTL_CNTINC_403 404
#define TTL_CNTINC_404 405
#define TTL_CNTINC_405 406
#define TTL_CNTINC_406 407
#define TTL_CNTINC_407 408
#define TTL_CNTINC_408 409
#define TTL_CNTINC_409 410
#define TTL_CNTINC_410 411
#define TTL_CNTINC_411 412
#define TTL_CNTINC_412 413
#define TTL_CNTINC_413 414
#define TTL_CNTINC_414 415
#define TTL_CNTINC_415 416
#define TTL_CNTINC_416 417
#define TTL_CNTINC_417 418
#define TTL_CNTINC_418 419
#define TTL_CNTINC_419 420
#define TTL_CNTINC_420 421
#define TTL_CNTINC_421 422
#define TTL_CNTINC_422 423
#define TTL_CNTINC_423 424
#define TTL_CNTINC_424 425
#define TTL_CNTINC_425 426
#define TTL_CNTINC_426 427
#define TTL_CNTINC_427 428
#define TTL_CNTINC_428 429
#define TTL_CNTINC_429 430
#define TTL_CNTINC_430 431
#define TTL_CNTINC_431 432
#define TTL_CNTINC_432 433
#define TTL_CNTINC_433 434
#define TTL_CNTINC_434 435
#define TTL_CNTINC_435 436
#define TTL_CNTINC_436 437
#define TTL_CNTINC_437 438
#define TTL_CNTINC_438 439
#define TTL_CNTINC_439 440
#define TTL_CNTINC_440 441
#define TTL_CNTINC_441 442
#define TTL_CNTINC_442 443
#define TTL_CNTINC_443 444
#define TTL_CNTINC_444 445
#define TTL_CNTINC_445 446
#define TTL_CNTINC_446 447
#define TTL_CNTINC_447 448
#define TTL_CNTINC_448 449
#define TTL_CNTINC_449 450
#define TTL_CNTINC_450 451
#define TTL_CNTINC_451 452
#define TTL_CNTINC_452 453
#define TTL_CNTINC_453 454
#define TTL_CNTINC_454 455
#define TTL_CNTINC_455 456
#define TTL_CNTINC_456 457
#define TTL_CNTINC_457 458
#define TTL_CNTINC_458 459
#define TTL_CNTINC_459 460
#define TTL_CNTINC_460 461
#define TTL_CNTINC_461 462
#define TTL_CNTINC_462 463
#define TTL_CNTINC_463 464
#define TTL_CNTINC_464 465
#define TTL_CNTINC_465 466
#define TTL_CNTINC_466 467
#define TTL_CNTINC_467 468
#define TTL_CNTINC_468 469
#define TTL_CNTINC_469 470
#define TTL_CNTINC_470 471
#define TTL_CNTINC_471 472
#define TTL_CNTINC_472 473
#define TTL_CNTINC_473 474
#define TTL_CNTINC_474 475
#define TTL_CNTINC_475 476
#define TTL_CNTINC_476 477
#define TTL_CNTINC_477 478
#define TTL_CNTINC_478 479
#define TTL_CNTINC_479 480
#define TTL_CNTINC_480 481
#define TTL_CNTINC_481 482
#define TTL_CNTINC_482 483
#define TTL_CNTINC_483 484
#define TTL_CNTINC_484 485
#define TTL_CNTINC_485 486
#define TTL_CNTINC_486 487
#define TTL_CNTINC_487 488
#define TTL_CNTINC_488 489
#define TTL_CNTINC_489 490
#define TTL_CNTINC_490 491
#define TTL_CNTINC_491 492
#define TTL_CNTINC_492 493
#define TTL_CNTINC_493 494
#define TTL_CNTINC_494 495
#define TTL_CNTINC_495 496
#define TTL_CNTINC_496 497
#define TTL_CNTINC_497 498
#define TTL_CNTINC_498 499
#define TTL_CNTINC_499 500
#define TTL_CNTINC_500 501
#define TTL_CNTINC_501 502
#define TTL_CNTINC_502 503
#define TTL_CNTINC_503 504
#define TTL_CNTINC_504 505
#define TTL_CNTINC_505 506
#define TTL_CNTINC_506 507
#define TTL_CNTINC_507 508
#define TTL_CNTINC_508 509
#define TTL_CNTINC_509 510
#define TTL_CNTINC_510 511
#define TTL_CNTINC_511 512

#define TTL_DEC(n) TTL_APPEND(TTL_CNTDEC_, n)
#define TTL_INC(n) TTL_APPEND(TTL_CNTINC_, n)

#endif //__macro_counter__hpp
